<?php
namespace enums;

/**
 * 
 * @author fzq
 * 
 * 全名规则
 * 第一组
 * 
 * H:Hash
 * STR:STRing
 * L:List
 * S:Sets
 * SS:Sorted Sets
 * B:Bitmaps
 * HLL:HyperLogLogs
 * G:Geospatial
 * 
 * 第二组
 * S for Self 
 * A for Ali
 * 
 * 第三组及其他 更详细的数据结构或业务
 * 
 * 示例： H_S_LOCK_ORDERS = 'h_s_lock_specification';
 */
class CachePrefixEnums
{
	
	//********************************************************************************
	//DLock.php
	/**
	 * 某个资源持有者list前缀
	 */
	const LOCK_RES_LIST_KEYS_PREFIX = 'l_s_res_lock_keys_';
	
	/**
	 * 持锁者前缀
	 */
	const LOCK_RES_ITEM_PREFIX = 'str_s_res_lock_item_';
	
	/**
	 * 资源锁 资源数量hash前缀 主要用来存放资源的个数及剩余数量等
	 */
	const LOCK_RES_PREFIX = 'h_s_res_lock_';
	
	/**
	 * 消费记录前缀
	 */
	const LOCK_RES_LOCK_CONSUME_PREFIX = 'h_s_res_lock_consume_log_';
	
	//********************************************************************************
	//IDGenerator.php
	
	/**
	 * 用于IDGenerator
	 */
	const IDG_PREFIX = 'str_a_idg_';
	
	
	//********************************************************************************
	//区域
	
	/**
	 * 以区域名为key
	 */
	const DISTRICTS_NAME = 'h_s_district_name';
	
	/**
	 * 以区域id为key
	 */
	const DISTRICTS_ID = 'h_s_district_id';
	
	/**
	 * 子
	 */
	const DISTRICT_CHILDREN = 'h_s_district_children';
	
	/**
	 * 选择项
	 */
	const DISTRICT_SELECTORS = 'h_s_district_selectors';
	
	
	
	//********************************************************************************
	//RedLock
	/**
	 * 扩展锁
	 */
	const LOCK_EX_PREFIX = 'str_s_redlock_exlock_';
	
	/**
	 * 普通锁
	 */
	const LOCK_PREFIX = 'str_s_redlock_lock_';
	
	//********************************************************************************
	//RQueue redis queue
	
	const RQUEUE_PREFIX = 'l_s_queue_';
	
	const RQUEUE_BACKUP_PREFIX = 'l_s_queue_backup_';
	
}